1. Field of the Invention
The present invention relates to a printer controller and system having a direct memory access (DMA) data transmission.
2. Discussion of the Background
In recent years, as a digital technology progresses, high definition images have become increasingly popular. In view of this, when a digital image processing apparatus, such as a laser printer, a digital photocopier, etc., processes high definition images, the size and cost of an image memory and the image processing time tend to increase. Therefore, holding down those increases is becoming an important challenge.
As an example, in a digital photocopier provided with an electronic sorter, image data of plural sheets of original documents is first stored in an image memory. Then, the stored image data is read page by page from the image memory and printed on paper, and thus a specified number of sorted copies are completed. For reducing the capacity of image memory, image data is sometimes compressed by a coding method.
When image data is encoded, data compressibility or a data compression ratio, which is a ratio of an encoded data size to the non-encoded or original data size, varies greatly depending upon the contents of the image to be encoded. Therefore, when image data is encoded by a coding method, the data compression ratio may reach a value smaller than one, i.e., the image data is compressed. However, the data compression ratio sometimes exceeds a value of one, i.e., the image data is actually expanded rather than being compressed. Accordingly, for such image data, it is preferable not to encode the image data.
For decreasing an image data size included on a page, the whole area of the page may be divided into plural sub-areas, and each of the sub-areas may be adaptively encoded according to the data compressibility thereof, which generally depends on the contents of the sub-area. Thus, the image data size of the page is minimized. Accordingly, when the adaptively encoded image data of the page is stored in an image memory, the memory size can also be minimized.
Meanwhile, since a demand for increased digital data processing speed in digital devices, such as laser printers, computer systems, etc., has increased, a demand for high-efficient data block transmission by a direct memory access (DMA) controller has also increased.
As an example of DMA controllers, Japanese Laid-Open Patent Publication No. 6-103225 discloses a chain type of DMA controller. In the art, as descriptor information, plural pairs of an addresses and the number of transmission data words corresponding to the plural data blocks are stored in a DMA descriptor area in an external memory in advance of a transmission. During the DMA data transmission, the chain type DMA controller reads the descriptor information, i.e., the plural pairs of the stored data address and the number of transmission data words in turn, and transmits the plural data blocks according to the read information.
As an example of a digital image processing apparatus, Japanese Laid-Open Patent Publication No. 9-300743 discloses an image forming apparatus. In this apparatus, when the capacity of an image memory is larger than an image data size of a page, the uncompressed page image data is transmitted to the image memory by a DMA data transmission. The page image data in the image memory is then transmitted to a printer engine by DMA data transmission to form an image. When the capacity of the image memory is smaller than the image data size of the page, the page image data is compressed and then transmitted to the image memory by DMA data transmission. After that, the page image data stored in the image memory is transmitted to a data expansion device to be expanded, and the expanded data is transmitted to the printer engine by DMA data transmission to form an image.
As stated above, image data on a page generally includes two categories of images. One category can be compressed in a relatively effective manner and the other category cannot be effectively compressed. Further, for using an image memory efficiently, the image memory may be dynamically divided into two or more areas. Likewise, the page image data may also be divided into two or more portions. In that case, the divided memory areas can be dynamically allocated to the divided image data. The divided image data cannot always be stored in continuous addresses of the image memory for an efficient use of the image memory.
In addition, the divided image data may be adaptively encoded according to a data compression ratio of the divided data, respectively, and thus efficiency of use of the memory is increased. When image data is stored in the memory in such manner, image data transmission, for example, from an image input device to the memory, from the memory to an image data output device, etc., is desirably efficiently completed in a short time.
However, the background art does not describe an efficient transmission of image data composed of a plurality of divided image data being encoded and non-encoded stored in an image memory to an external device.